package com.serverTechnology.resource.entity.dto;

import cn.stylefeng.roses.kernel.db.api.pojo.entity.BaseEntity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;

/**
 *  管理添加
 * @Author 王烁烁
 * @Date 2024/7/29
 */


@Data
@AllArgsConstructor
@NoArgsConstructor
public class ManagementInsertDto {
    /**
     * 设备编号、工具编号、工装编号
     */
    @NotBlank(message = "设备编号、工具编号、工装编号 不能为空")
    @ApiModelProperty(value = "设备编号、工具编号、工装编号")
    @JsonProperty("resourceNumber")
    @TableField("RESOURCE_NUMBER")
    private String resourceNumber;

    /**
     * 设备名称、工具名称、工装名称
     */
    @NotBlank(message = "设备名称、工具名称、工装名称 不能为空")
    @ApiModelProperty(value = "设备名称、工具名称、工装名称")
    @TableField("RESOURCE_NAME")
    @JsonProperty("resourceName")
    private String resourceName;

    /**
     * 设备id、工具类型id、工装类型id
     */
    @NotNull(message = "设备id、工具类型id、工装类型id 不能为空")
    @ApiModelProperty(value = "设备id、工具类型id、工装类型id")
    @TableField("DEVICE_ID")
    @JsonProperty("deviceId")
    private Long deviceId;

    /**
     * 设备厂商
     */
    @NotBlank(message = "设备厂商 不能为空")
    @ApiModelProperty(value = "设备厂商 ")
    @TableField("RESOURCE_MANUFACTURERS")
    @JsonProperty("resourceManufacturers")
    private String resourceManufacturers;

    /**
     * 规格
     */
    @ApiModelProperty(value = "规格")
    @TableField("RESOURCE_SPECIFICATION")
    @JsonProperty("resourceSpecification")
    private String resourceSpecification;

    /**
     * 一体机IP
     */
    @ApiModelProperty(value = "一体机IP")
    @TableField("RESOURCE_ALL_IN_ONE_IP")
    @JsonProperty("resourceAllInOneIp")
    private String resourceAllInOneIp;

    /**
     * 是否智能设备(0在用，1停用)
     */
    @ApiModelProperty(value = "是否智能设备(0在用，1停用)")
    @TableField("RESOURCE_INTELLIGENT")
    @JsonProperty("resourceIntelligent")
    private Long resourceIntelligent;

    /**
     * 状态(0在用，1停用)
     */
    @ApiModelProperty(value = "状态(0在用，1停用)")
    @TableField("RESOURCE_STATE")
    @JsonProperty("resourceState")
    private Long resourceState;

    /**
     * 设备工段
     */
    @ApiModelProperty(value = "设备工段ID")
    @TableField("RESOURCE_WORKSHOP_ID")
    @JsonProperty("resourceWorkshopID")
    private Long resourceWorkshopID;

    /**
     * 备注
     */
    @ApiModelProperty(value = "备注")
    @TableField("REMARK")
    @JsonProperty("remark")
    private String remark;

    /**
     * 设备EQUIPMENT，工具TOOL，工装FROCK
     */
    @ApiModelProperty(value = "设备EQUIPMENT，工具TOOL，工装FROCK")
    @TableField("DEVICE_DISTINGUISH")
    @JsonProperty("deviceDistinguish")
    private String deviceDistinguish;
}
